~~NOTOC~~



=======  MB-6582 - MIDIbox SID Synthesizer V2 =======

{{mb-6582:481495707_1ec28e7846.jpg}}{{mb-6582:481496087_02ce5dce82.jpg}}{{mb-6582:476908770_c227bdfce5.jpg}}{{mb-6582:476909216_d4c0cc6a62.jpg}}

**The Original MB-6582, aka. the MB-6582 Prototype**

For historical information about the MB-6582 Prototype, see the old pages here:

[[wilba_mb_6582_prototype|The MB-6582 Prototype]]

**More photos of MB-6582 during construction**

[[http://www.flickr.com/photos/wilba/]]

**People interested in obtaining the PCBs can look at the MIDIbox forum topic here:**

[[http://www.midibox.org/forum/index.php?topic=9560]].

**People who missed out on the first batch of PCBs can read this MIDIbox forum topic here**:

[[http://www.midibox.org/forum/index.php?topic=9700.0]]

**There are bulk orders for cheap panels and other parts required, see here:**

[[http://www.midibox.org/forum/index.php?board=36.0]]

**The MB-6582 project is based on the MIDIbox Hardware Platform (MBHP) and is strictly for personal non-commercial use. Everyone who has bought MB-6582 PCBs must read and agree to the following license:**

[[wilba_mb_6582_license|The MB-6582 License]]

====== Introduction ======

MB-6582 is the name of my MIDIbox SID Synthesizer V2 project.

When it was finished, I was totally surprised that it was making appearances on many blogs, but what surprised me the most was when it appeared on Hack-a-day:

//"This is one of the nicest DIY builds I've seen in a while - just beautiful work."// - Will O'Brian, [[http://www.hackaday.com/2007/05/23/mb-6582-diy-c64-based-midi-synth/|Hack-a-day]]

However, this one was the most amusing:

//"Sometimes you see a DIY project and you're just like "are you fucking kidding me? This is one such, for sure. This dude's MIDIbox SID is a DIY synth the way that an Aston Martin Vanquish is a car. I mean, like, fuck. Eight (as in "the number after seven") 6582 SID chips for four stereo (as in "mono times two") channels of audio, a nice FPE panel, and the same number of LEDs as any random sign in Times Square."// - Chris Randall, [[http://www.analogindustries.com/blog/entry.jsp?msgid=1182069030576|Analog Industries]]

But my favourite bit of praise:

//It's pure eye candy - not only outside, but also inside the case// - TK's comment from [[http://www.midibox.org/forum/index.php?topic=9175|MIDIbox of the Week]] 

Well, there was my fifteen minutes... :)

I've received lots of praise for the design, but what I'm still amazed about is that so many people want one //just like this//. While designing it, I only catered for my needs, but still considered what might be useful for the few crazy SID fans who might want just the base PCB to upgrade their current MIDIbox SID to the new maximum of 8 SIDs. There are some people following this upgrade path, like TK and MTE, but with so many other people wanting one too, I decided it would be best if I did a few changes to suit everybody's needs.

The rest of this wiki page is thus relevant to people who bought or will buy the revised PCBs, whether just using the **base PCB** (with the PICs and SIDs on it) or the **control surface PCB** (with the switches, LEDs and rotary encoders).

**The base PCB costs US$20 and the control surface PCB costs US$20 (if ordered from Wilba as part of a bulk-order).**

Details about the current bulk order are here: [[http://www.midibox.org/forum/index.php?topic=9238]].

====== PCB Specifications/Requirements ======

===== Base PCB =====

  * The base PCB is essentially a merging of multiple MIDIbox modules into one compact PCB, and should work exactly the same as connecting multiple MIDIbox modules with cables. Almost all the ports on the Core module are available, with identical pinouts.
  * The base PCB can be stuffed with (at most) 4x PIC18F4685, 8x SID, 8x 24LC512, 5x 74HC165 (40 digital inputs) 3x 74HC595 (24 digital outputs).
  * The base PCB has 9v and 12v supply rails which you can connect to a pair of SIDs, so each pair of SIDs can be either 6581 SIDs or 8580/6582 SIDs.
  * You don't have to use all the SID sockets. You can use from 1 to 8 SIDs. You can choose to put SIDs in stereo pairs, or only put a SID in the left SID socket for a mono channel.
  * You don't have to use all the PIC sockets. You can choose to use less than four PICs.
  * You don't have to use the DIN/DOUT at the bottom of the PCB, and you don't have to use the optimized switch/LED matrix I designed to get a "step C" control surface with only 8 shift registers, and you don't have to use a "step C" control surface (or any control surface). However, TK has kindly done all the code changes to support the optimized switch/LED matrix so you can have a big control surface with only the shift registers on this PCB.
  * The base PCB is exactly 9200mil x 7215mil (9.2 inches x 7.215 inches). This fits exactly into the PT-10 case by PacTec, with mount holes that line up with the case standoffs.

  * There are four different ways of supplying power to the base PCB:
    * **PSU Option A:** C64 power supply, generating only 9v supply (no 12v) ... exactly like the prototype, it converts the 9v AC coming from the C64 power supply. This option only allows use of SIDs that need 9v (8580 or 6582), the 6581 needs 12v. One 9v voltage regulator is used to supply 9v to all the SIDs.
    * **PSU Option B:** C64 power supply, generating 9v and 12v supply ... almost exactly like the [[http://www.ucapps.de/mbhp/mbhp_8xsid_c64_psu_optimized.pdf|"C64 PSU Optimized"]] circuit, which adds the 9v DC to the 5v DC to create 14v DC, enough to get the 12v required for 6581 SIDs. Instead of a voltage regulator on each SID module, there are just two (one 9v and one 12v).
    * **PSU Option C:** Uses 5v regulation circuit to provide option A or B when not using C64 PSU (which has its own 5V regulation). //I have added this option at the last minute to the PCB as a potential workaround for people unable to get a C64 PSU. People could generate 5v from a single unregulated 9v AC supply (9v AC adapter) or supply separate unregulated 9v AC and unregulated 5v DC supplies (9v and 5v AC adapters), using the same power socket and switch. Please do not assume this idea will work well, it might introduce noise, hum and heat!//
    * **PSU Option D:** External regulated power supply circuit, supplying +12v,+9v,+5v and ground ... for those people wanting to use their own power supply, because they don't want to use the C64 PSU.

===== Control Surface PCB =====

The control surface PCB is design to work with the parts described in the parts list:

[[wilba_mb_6582_control_surface_parts_list|MB-6582 Control Surface Parts List]]

These parts work with the 10mm gap between frontpanel and control surface PCB.
Any variation in these parts (or the 10mm gap) will affect the end result.

====== PCB Revisions ======

===== Base PCB =====

The prototype base PCB was built for my needs, and my eight 6582 SIDs, so it only generates a 9 volt supply for the SIDs. I did consider generating both 9v and 12v (to support 6581 SIDs also), but there wasn't the space. Plus, this is //the MB-6582//, it will only ever have 6582 SIDs. So the biggest change to the base PCB is supporting all kinds of SIDs by optionally generating both 9v and 12v supplies. Since the base PCB was designed and the prototype made before TK finalized the hardware design, some changes were made when TK changed the hardware design. With the use of PIC18F4685, the IIC MIDI modules were redundant and removed, the CAN bus required and added, and all PICs were connected to the MIDI In port.

===== Control Surface PCB =====

The big change for the control surface PCB was dealing with the fact that people cannot buy the same 4x20 PLED display like in the original MB-6582, so the way I mounted the display between the PCB and panel cannot work with thicker LCD displays. Since it was possible for me to put the PLED display in the 10mm gap, the entire control surface was designed to accommodate this, which is why the original has two small PCBs above and below the display to hold the switches and LEDs.

In the revised design, there is a hole in the PCB and the LCD display is mounted //behind// the PCB, through this hole, and there is about a 2.5mm gap between the top of the LCD and the back of the frontpanel. The switches and LEDs above and below the display, which were mounted on separate PCBs in the original, are now mounted on the control surface PCB, so the same kind of switch can be used and construction will be a lot easier.

====== Building Your Own ======

There is a lot of documentation for people building their own. **People must read everything before they start buying parts** so they fully understand which parts are optional and which parts are required.

Follow the links to the other sections:

[[wilba_mb_6582_parts_list|MB-6582 Parts List]]

[[wilba_mb_6582_base_pcb_construction_guide|MB-6582 Base PCB Construction Guide]]

[[wilba_mb_6582_control_surface_parts_list|MB-6582 Control Surface Parts List]]

[[wilba_mb_6582_control_surface_construction_guide|MB-6582 Control Surface Construction Guide]]




====== Final Panel Designs ======

Note: These panel designs use 14mm holes for the encoders to allow for knob illumination. If this is too big for your desired knobs then reduce the size to a minimum of 9.5mm to fit the encoder bushing.

In Front Panel Designer format:

{{mb-6582:mb-6582_frontpanel_fpd.zip}}

{{mb-6582:mb-6582_rearpanel_fpd.zip}}

Silkscreen artwork (black on white, but to be printed white on black):

{{mb-6582:mb-6582_frontpanel_silkscreen.pdf}}

{{mb-6582:mb-6582_rearpanel_silkscreen.pdf}}

DXF files for the panels (export from FPD):

{{mb-6582:mb-6582_frontpanel_fpd_export_dxf.zip}}

{{mb-6582:mb-6582_rearpanel_fpd_export_dxf.zip}}




====== Final PCB Designs ======

In colour:

{{mb-6582:mb-6582_base_pcb.pdf}}

{{mb-6582:mb-6582_cs_pcb.pdf}}

Printer-friendly black and white (with ground plane hidden):

{{mb-6582:mb-6582_base_pcb_b_w.pdf}}

{{mb-6582:mb-6582_cs_pcb_b_w.pdf}}


====== Control Surface Wiring ======

These describe the wiring of the control surface PCB. They can be used as a guide for constructing your own control surface. You can freely assign LEDs and switches to the matrix, but for the best performance in the firmware, the Modulation Matrix LEDs should be wired with common cathodes in vertical columns, so that the LED matrix will illuminate one column of 8 LEDs each shift register update.

LEDs and switches marked with an asterisk (*) are V2-specific features or just things I added for my own use. Refer to [[http://www.ucapps.de/midibox_sid_manual_fp.html]] for more information.

{{mb-6582:mb-6582_cs_dout_wiring.pdf}}

{{mb-6582:mb-6582_cs_din_wiring.pdf}}



====== Questions and Answers About The MB-6582 Base PCB ======

Until I find a better place for this info, I'll put it here...


**What is the function of J11 (directly below U1_Core1)?**

Using a jumper, this allows you to connect the PIC's serial output to the MIDI port. You would only need to use this once for the first upload of MIOS and the MB-SID V2 firmware, thereafter connect the master PIC (1) to the MIDI out and after uploading new MB-SID V2 firmware, the master PIC can clone itself to the other PICs across the CAN bus.

**What is the function of P1 (extreme lower right corner)?**

LCD backlight brightness control, just like on the Core module.

**How are the attentuating pots pictured on the rear of the chassis connected?**

They are dual-gang "feedback" pots, connected to J3_SIDx and J23_SIDx.
Input goes to wiper pin (middle pin). Ground goes to left pin (facing towards pot shaft, pins pointing down). Output goes to right pin (facing towards pot shaft, pins pointing down).

**What sorts of heatsinks should be fitted for V3 and V1 (I am using Option B).  Their positions seem to prevent both from having a sink at the same time.  Should I look for flatter heatsinks?**

Heatsinks may not be required, it all depends on how many SIDs you use and the load on the 9v and 12v supplies. But if you discover your regulators are getting hot, then you can add heatsinks.

I used these ones as a guide for placing the regulators far enough apart, giving enough space for both to be fitted.
[[http://www.altronics.com.au/index.asp?area=item&id=H0640]]
[[http://www.altronics.com.au/index.asp?area=item&id=H0628]]

You could also drill two holes in a large heatsink and connecting both regulators to it.

**If I'm using the PacTec PT-10 case, do the extra headers on the cores really need to be populated?**

It all depends on whether you want to eventually connect analog inputs (pots, joysticks, etc.) or analog outputs (to control external filters) to the expansion port on the rear panel. Obviously some are truly unused and never likely to be used (like the IIC port and DIN/DOUT ports) but I put them all in there for full flexibility and compatibility with the Core module PCB. Basically, if you understand the Core module enough to know they aren't needed, then it's up to you whether to populate them.

I choose to fully populate the PCB so that I don't ever need to solder it again, and it looks better than empty holes on the PCB. I suggest people do the same, for the advantages should you need to troubleshoot, but ultimately you're free to do what you like.

At a minimum I recommend at least populating the J15 headers (for LCD) so you can troubleshoot slave cores easily by connecting an LCD (should things stop working!)

**Likewise, do I really need to mount pot P2 for the slave cores?**

As above, these are the contrast pots for LCDs so they're only useful for troubleshooting. If you want to save on trim pots, you could short between the middle pin and the left or right pin, this would approximate turning the trimpot fully one way and at least let the LCD display something when connected to slave PICs.

** The tiny jumper pads on the solder side beneath the cores have something to do with 8-bit mode for LCDs.  How are these supposed to be set? **

Connect ribbon cable to the LCD or PLED using all wires, as if you were going to use 8-bit mode on a normal Core module. The four wires you don't need for 4-bit mode are not connected on J15 by default. If you discover your display freezing up after a while (but the synth still works in the background), you can execute a MIOS memory read from MIOS Studio to validate that the display has timed out, most likely due to a bug working in 4-bit mode. To fix this, you can run in 8-bit mode by using two PIC pins from port E to replace the two PIC pins being used by the CAN bus. Solder those jumper pads on the bottom side, run the change device ID app to use custom LCD driver, the custom LCD driver file should already be in the source code of the MB-SID V2 application and compiled in. If you want to run other applications, you'll need to copy that custom LCD driver file into those source directories and rebuild those applications.

** Is there any reason why 16-volt 2200uF caps cannot be used instead of 25-volt ones? **

For the 5v supply: no.
For the 9v AC after the bridge rectifier: not really. I was told once to expect up to 2x the voltage after the rectivier, i.e. if it's 9v AC, choose capacitor to handle 18v DC. It really doesn't go up that high I think, and caps rated to 15v should be enough.

** The silkscreen for the diode in each core has a via right in the middle, obscuring the arrow.  Which direction is the arrow pointing? **

The diode is pointing down. Cathode on the lower pin. Refer to {{mb-6582:mb-6582_base_pcb.pdf|base PCB PDF}}


** What's the purpose of the J70 header? **

This is a passive mixed output of the four stereo channels, which you can connect to the small phono jack above the power switch. Totally optional.

This was a late design idea I threw into the prototype, the resistors below each audio socket are used to connect the audio signals together when there is no plug in the switched audio socket, i.e. it will only mix those sockets without plugs. You need to connect it together with insulated wire under the board though.... I didn't want to mess up the ground plane with tracks. Basically join four unused pads together in two rows.

I used 10K resistors there because that's what I've seen before in passive mixer designs, but the output is very attenuated, and I am guessing that you could drop these to 1K or less, as the outputs of the audio buffers after each SID can probably handle that. Someone with more audio electronics (and SID!) knowledge can probably answer that question.